<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        div {
            width: 600px;
            margin: 100px auto;
        }
        
        .message {
            display: inline-block;
            font-size: 12px;
            color: #999;
            background: url(‪‪3.png) no-repeat left center;
            padding-left: 20px;
        }
        
        .wrong {
            color: red;
            background-image: url(2.png);
        }
        
        .right {
            color: green;
            background-image: url(1.png);
        }
    </style>
</head>

<body>
    <div class="register">
        <input type="password" class="ipt">
        <p class="message">密码以字母开头，长度在6~18之间，只能包含字母、数字和下划线</p>
    </div>
    <script>
        // 首先判断的事件是表单失去焦点 onblur
        // 如果输入正确则提示正确的信息颜色为绿色小图标变化
        // 如果输入不是：以字母开头，长度在6~18之间，只能包含字母、数字和下划线，则提示错误信息颜色为红色 小图标变化
        // 因为里面变化样式较多，我们采取className修改样式
        // 1.获取元素 ipt message元素
        var ipt = document.querySelector('.ipt');
        var message = document.querySelector('.message');

        //2. 注册事件 失去焦点
        ipt.onblur = function(){
            var pattern = new RegExp("^[A-Za-z]\\w{5,17}")
            console.dir(ipt);
            var password = ipt.value;
            var flag = password.match(pattern);
            if(flag){
                message.className = 'message right';
                message.innerHTML = '您输入正确';
            }
            else
            {
            message.className = 'message wrong';
            message.innerHTML = '密码请以字母开头，长度在6-18之间，只能包含字母。数字和下划线'; 
            }
        }
        // ipt.onblur = function() {}
        // 正则表达式判断是否满足密码要求：以字母开头，长度在6~18之间，只能包含字母、数字和下划线
        //如果满足要求则p标签的className改成 message right，提示：您输入的正确,否则改成message wrong，提示：密码请以字母开头，长度在6~18之间，只能包含字母、数字和下划线
    </script>
    <p align="center"> &copy;版权由蒋杵峻归属，未经允许不得复制、镜像</p>
</body>

</html>